added SSCLI 1.0
[windows-sources.git] / shared source / wpf / src / host / shimimpl / applicationmanifest.hxx
blobd4f51d94cc6ea636b96346d9783c00e89a26ed50
1 //------------------------------------------------------------------------
2 //
3 // Copyright (c) Microsoft Corporation. All rights reserved.
4 //
5 // Description:
6 // Defines the interface to the application manifest
7 //
8 // History:
9 // 2005/05/09 - [....] Created
10 // 2007/09/20 [....] Ported Windows->DevDiv. See SourcesHistory.txt.
12 //------------------------------------------------------------------------
13 #pragma once
15 class CApplicationManifest : ISAXContentHandler, IBindStatusCallback
17 public:
18 CApplicationManifest(__in LPCWSTR pswzDeploymentUri, __in LPCWSTR pswzCodebase);
19 ~CApplicationManifest() {}
21 HRESULT Read();
23 public:
24 STRING_PROP(DeploymentManifestUri);
25 STRING_PROP(Codebase);
26 STRING_PROP(Uri);
27 STRING_PROP(RequestedVersion);
28 STRING_PROP(RequestedClrVersion);
30 private:
31 long m_refCount;
33 public:
34 // IUnknown
35 IFACEMETHODIMP QueryInterface(__in REFIID riid, __out void* *ppv);
36 IFACEMETHODIMP_(ULONG) AddRef();
37 IFACEMETHODIMP_(ULONG) Release();
39 private:
40 // ISAXContentHandler
41 IFACEMETHODIMP putDocumentLocator(__in ISAXLocator* /*pLocator*/) {return S_OK; }
42 IFACEMETHODIMP startDocument() {return S_OK; }
43 IFACEMETHODIMP endDocument() {return S_OK; }
45 IFACEMETHODIMP startPrefixMapping(
46 __in const wchar_t* /*pwchPrefix*/,
47 __in int /*cchPrefix*/,
48 __in const wchar_t* /*pwchUri*/,
49 __in int /*cchUri*/) {return S_OK; }
51 IFACEMETHODIMP endPrefixMapping(
52 __in const wchar_t* /*pwchPrefix*/,
53 __in int /*cchPrefix*/) {return S_OK; }
55 IFACEMETHODIMP startElement(
56 __in_ecount(cchNamespaceUri) const wchar_t *pwchNamespaceUri,
57 __in int cchNamespaceUri,
58 __in_ecount(cchLocalName) const wchar_t *pwchLocalName,
59 __in int cchLocalName,
60 __in_ecount(cchQName) const wchar_t *pwchQName,
61 __in int cchQName,
62 __in ISAXAttributes *pAttributes);
64 IFACEMETHODIMP endElement(
65 __in const wchar_t* /*pwchNamespaceUri*/,
66 __in int /*cchNamespaceUri*/,
67 __in const wchar_t* /*pwchLocalName*/,
68 __in int /*cchLocalName*/,
69 __in const wchar_t* /*pwchQName*/,
70 __in int /*cchQName*/) {return S_OK; }
72 IFACEMETHODIMP characters(
73 __in const WCHAR* /*pwchChars*/,
74 __in int /*cchChars*/) {return S_OK; }
76 IFACEMETHODIMP ignorableWhitespace(
77 __in const wchar_t* /*pwchChars*/,
78 __in int /*cchChars*/) {return S_OK; }
80 IFACEMETHODIMP processingInstruction(
81 __in const wchar_t* /*pwchTarget*/,
82 __in int /*cchTarget*/,
83 __in const wchar_t* /*pwchData*/,
84 __in int /*cchData*/) {return S_OK; }
86 IFACEMETHODIMP skippedEntity(
87 __in const wchar_t* /*pwchName*/,
88 __in int /*cchName*/) {return S_OK; }
90 public: // IBindStatusCallback implemented virtual functions
92 IFACEMETHODIMP OnStartBinding(DWORD, __in IBinding*) {return S_OK;}
93 IFACEMETHODIMP GetPriority(__in LONG*) {return S_OK;}
94 IFACEMETHODIMP OnLowResource(DWORD) {return S_OK;}
95 IFACEMETHODIMP OnProgress(ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, __in LPCWSTR szStatusText);
96 IFACEMETHODIMP OnStopBinding(HRESULT, __in LPCWSTR ) {return S_OK;}
97 IFACEMETHODIMP GetBindInfo(__in DWORD*, __inout BINDINFO*);
98 IFACEMETHODIMP OnDataAvailable(DWORD, DWORD, __in FORMATETC*, __in STGMEDIUM*) {return S_OK;}
99 IFACEMETHODIMP OnObjectAvailable(__in REFIID, __in IUnknown*) {return S_OK;}
101 private:
102 CString m_strDeploymentManifestUri;
103 CString m_strCodebase;
104 CString m_strUri;
105 CString m_strRequestedVersion;
106 CString m_strRequestedClrVersion;
108 DWORD m_dwDeploymentManifestZone;
110 IInternetSecurityManager* m_pInternetSecurityManager;